Reenix: Implementing a Unix-Like Operating System in Rust

نویسندگان

  • Alex Light
  • Tom Doeppner
  • Shriram Krishnamurthi
چکیده

This paper describes the experience, problems and successes found in implementing a unix-like operating system kernel in rust. Using the basic design and much of the lowest-level support code from the Weenix operating system written for CS167/9 I was able to create a basic kernel supporting multiple kernel processes scheduled cooperatively, drivers for the basic devices and the beginnings of a virtual file system. I made note of where the rust programming language, and its safety and type systems, helped and hindered my work and made some, tentative, performance comparisons between the rust and C implementations of this kernel. I also include a short introduction to the rust programming language and the weenix project.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Implementing an advanced access control model on Linux

Traditional UNIX-like operating systems use a very simple mechanism for determining which processes get access to which files, which is mainly based on the file mode permission bits. Beyond that, modern UNIX-like operating systems also implement access control models based on Access Control Lists (ACLs), the most common being POSIX ACLs. The ACL model implemented by the various versions of Wind...

متن کامل

Implementing a Low Cost, Low Latency Parallel Platform

The practical application of parallel processing techniques is in most cases hampered by the cost of high-performance parallel platforms. The use of a Network of Workstations (NOW) connected by a fast Local Area Network (LAN) is very appealing for implementing a low-cost parallel platform. The use of higher-end PCs connected by fast LAN and running Unix-like operating systems is even more appea...

متن کامل

Comparative evaluation of the recent Linux and Solaris kernel architectures

The paper compares core kernel architecture and functionality of two modern open source systems. The subsystems examined are scheduling, memory management, and file system architecture. These subsystems are common to any operating system (not just Unix and Unix-like systems), and they tend to be the most wellunderstood components of the operating system. One of the more interesting aspects conc...

متن کامل

ESPRIT LTR 21917 (Pegasus II) Deliverable 4.5.2: Unix functionality

Traditional operating systems present fixed, high-level abstractions to application developers and users. These are part of standard APIs, such as POSIX or X/OPEN, which are typically implemented as a thin library layer on top of monolithic kernels. Recent efforts in operating system research, however, have focussed on providing more flexibility and new functionality to applications by lowering...

متن کامل

A machine-independent port of the SR language run-time system to the NetBSD operating system

SR (synchronizing resources)[1] is a PASCAL – style language enhanced with constructs for concurrent programming developed at the University of Arizona in the late 1980s[2]. MPD (presented in Gregory Andrews’ book about Foundations of Multithreaded, Parallel, and Distributed Programming[3]) is its successor, providing the same language primitives with a different syntax. The run-time system (in...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2015